/*
  道路封锁
  题目描述
    给定一张 n 个点，m 条边的有向图，每条边的边权均为 1。
    请对于每一个 i ∈ [1, m] 求出从点 1 到 n 的不经过第 i 条边的最短路长度。
    如果不经过第 i 条边，就不能从点 1 到点 n，输出 −1。
  输入描述
    第一行，两个正整数 n, m。
    接下来 m 行，每行两个正整数 u, v，表示一条边的两个端点。
  输出描述
    输出 m 行，每行一个整数，第 i 行的值表示不经过第 i 条边时，点 1 到点 n 的最短距离。
  样例1
    输入
      3 3
      1 2
      1 3
      2 3
    输出
      1
      2
      1
  样例2
    输入
      4 4
      1 2
      2 3
      2 4
      3 4
    输出
      -1
      2
      3
      2
  样例3
    输入
      5 10
      1 2
      1 4
      1 5
      2 1
      2 3
      3 1
      3 2
      3 5
      4 2
      4 3
    输出
      1
      1
      3
      1
      1
      1
      1
      1
      1
      1
  样例4
    输入
      4 1
      1 2
    输出
      -1
  提示
    2 ≤ n ≤ 400,
    1 ≤ m ≤ n(n−1)
    对于每条边:
      1 ≤ u, v ≤ n,
      u ≠ v，
      保证图中没有重边。
*/